/*
 * This file is part of Viper.  Viper is free software: you can
 * redistribute it and/or modify it under the terms of the GNU General Public
 * License as published by the Free Software Foundation, version 2.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
 * details.
 *
 * You should have received a copy of the GNU General Public License along with
 * this program; if not, write to the Free Software Foundation, Inc., 51
 * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Copyright GruntXProductions
 */

using System;
using System.Runtime.InteropServices;
using System.IO;

namespace Viper
{
	[StructLayout(LayoutKind.Sequential)]
	public unsafe struct GEXHdr
	{
	   public fixed byte magic[7];
	   public byte major;
	   public byte minor;
	   public byte version;
	   public uint entry;
	   public uint sectionCount;
	   public uint sectionTable;
	   public uint origin;
	   public byte subsystem;
	}
	public unsafe struct GEXSHdr
	{
		public fixed byte name[8];
		public uint size;
		public uint offset;
	}
	public class GEXSymbol
	{
		public string Name;
		public uint Address;
	}
	
}

